Maintaining consistent terminology throughout a technical document (e.g. research reports, journal article, engineering manual, etc.) is difficult to achieve especially when the document contain a variety of formats (e.g. engineering drawings, tables, flow charts diagrams, charts, graphs, etc.) Existing word processing programs have simple functions for maintaining consistent terminology. Unfortunately these functions are limited to sections of the document created in the word processor. These functions generally require a user to enter a string of characters to identify in the document and a string of characters to replace the identified string of characters. These functions are indiscriminate in their operation and routinely replace a string of characters within a word.